Memory cells are necessary in any application that requires the storage of data. Typical semiconductor circuits have memory cells either distributed between logic switching elements or in the form of block memories, such as SRAM memories for example. A block memory comprises a matrix of memory cells, only a small number of cells being affected by read or write operations. Therefore, the rows of the memory matrix can share elements that support the write or read operations such as sense amplifiers for example.
On the other hand, in the case of distributed memory cells for example as part of a logic circuit, it is typically necessary for the cells to constantly keep their stored information ready: the cells are continually read out.
Particularly in mobile applications, it is also important to keep the energy consumption of the memory cells as low as possible.